1. Field of the Invention
The present invention relates generally to remote user interfaces. More specifically, a cooperative application for remote user interfaces is described.
2. Description of the Related Art
Remote user interfaces (UIs) are becoming important in various consumer electronics (CE) devices because they permit a remote device to display a user interface for an application that it does not host. For example, in a home setting, a host (e.g. a set top box) located in one room may be arranged to deliver content over a home network to multiple devices including devices that may be located in other rooms within the house. In such settings, it is desirable for a user to be able to interact with the host device through a user interface displayed on the remote device.
To date, there have been a number of different efforts to define standards for developing remote user interfaces. Presently, no one remote UI standard works for all situations. Streaming bitmap remote UIs (Intel's XRT, VNC, JPEG2000, etc.) all require a special client in order to decode the stream. Hypertext Markup Language (HTML) UIs work for UIs that can be described in HTML, but have difficulty handling UIs that are not readily described using HTML. Video based UIs require expensive video encoders on the server side to create the UI in the first place.
The Consumer Electronics Association (CEA) has a standardization initiative—CEA 2014-A—that is intended to define a web-based protocol and framework for facilitating remote user interfaces. The CEA 2014-A standard defines the mechanisms necessary to allow a user interface to be remotely displayed on and controlled by devices or control points other than the one hosting the underlying logic. The basic device discovery is based on the Universal Plug and Play (UPnP) Device Architecture for UPnP networks and UPnP devices in the home. The standard also allows the remote display of user interfaces provided by third party internet services on UPnP devices in the home, and covers a wide range of UI capabilities for TVs, mobile phones and portable devices.
Browser based remote user interface systems (such as CEA 2014) typically use HTML to create user interfaces on remote devices in much the same way that web pages are created on a PC screen. In this model, the UI server (e.g., set-top box) and the UI client (e.g., television) are both clients on a network (connected via wired/wireless Ethernet, home-plug, or other similar networking technology). Network technologies, however, do not typically maintain continuous connections between devices, so network based technologies usually send bundles of instructions to the UI client and then the UI client operates largely autonomously.
The model for set-top boxes prior to the introduction of remote user interfaces, however, was for the set-top box to maintain continuous control of the display device. Such continuous control is not possible in existing remote user interface systems.